Virtuelle Server
IQ4docs bzw. seine Komponenten können grundsätzlich in virtuellen Umgebungen betrieben werden. Für einen stabilen und sicheren Betrieb sind jedoch bestimmte Rahmenbedingungen einzuhalten, insbesondere im Umgang mit pausierten virtuellen Maschinen, Cluster-Systemen und Snapshots. Da IQ4docs eine MongoDB-Datenbank verwendet, sind die Aspekte der Datenhaltung und Replikation besonders kritisch.
- Datenverlust und Inkonsistenzen: MongoDB arbeitet mit Replikationsmechanismen und Journal-Dateien. Wenn eine VM pausiert wird, können laufende Schreibvorgänge unvollständig bleiben, was zu Replikationsfehlern oder inkonsistenten Datenzuständen führt.
- Clusterfehler: In einem MongoDB-Replikations-Set kann ein pausierter Knoten als nicht erreichbar markiert werden. Dadurch kann ein automatischer Failover ausgelöst werden, bei dem ein anderer Knoten zum Primary wird. Wird die pausierte VM später fortgesetzt, kann es zu einem Konflikt kommen, wenn sie noch alte Datenstände enthält.
- Ressourcenprobleme: Nach dem Fortsetzen stehen eventuell nicht genügend Systemressourcen zur Verfügung, was zu verzögerten Wiederanbindungen führt.
- Veraltete Sitzungs- und Cache-Daten: Temporäre Daten (Tokens, Sitzungen) verlieren nach dem Fortsetzen häufig ihre Gültigkeit, sodass Dienste neu gestartet werden müssen.
Empfehlung: Das Pausieren virtueller Maschinen sollte vermieden werden. Für geplante Unterbrechungen ist die VM ordnungsgemäß herunterzufahren.
In einer Cluster-Konfiguration kann das Pausieren einzelner Maschinen zu schwerwiegenden Störungen führen.
Ein IQ4docs-Cluster besteht aus mindestens drei Serverknoten, von denen einer als Master fungiert. Wird dieser pausiert, erkennt das System den Ausfall und wählt automatisch einen neuen Master. Wird die pausierte Maschine anschließend fortgesetzt, kann es im ungünstigsten Fall zu einer doppelten Master-Rolle und damit zu Inkonsistenzen kommen.
Empfehlung: In Cluster-Umgebungen dürfen virtuelle Maschinen nicht pausiert werden.
Das Erstellen eines Snapshots pausiert eine VM kurzzeitig, um den Zustand der Festplatte und des Arbeitsspeichers festzuhalten. Bei laufenden MongoDB-Instanzen kann dies jedoch dieselben Risiken wie ein manuelles Pausieren verursachen.
- Unterbrechung laufender Schreib- oder Replikationsvorgänge
- Inkonsistente oder beschädigte Daten beim Wiederherstellen
- Veraltete Datenstände auf sekundären Replikationsknoten
Empfehlung: Snapshots sollten nicht im laufenden Betrieb einer MongoDB-basierten IQ4docs-Instanz erstellt werden. Vor der Snapshot-Erstellung ist die VM vollständig herunterzufahren, um eine konsistente Datensicherung zu gewährleisten.
Wir empfehlen dringend, von laufenden virtuellen Servern keine Snapshots zu erstellen und diese auch nicht zu pausieren.